package com.ev.hr.service;

import com.ev.hr.domain.InterviewRecordDO;
import com.ev.hr.vo.*;
import com.ev.framework.utils.R;

import java.io.IOException;
import java.text.ParseException;
import java.util.List;
import java.util.Map;


/**
 * 文件名称： com.ev.hr.service.InterviewRecordService.java</br>
 * 初始作者： ev-monitor</br>
 * 创建日期： 2020-05-12 12:34:33</br>
 * 功能说明： 面试记录表 <br/>
 * =================================================<br/>
 * 修改记录：<br/>
 * 修改作者        日期       修改内容<br/>
 * ================================================<br/>
 * Copyright (c) 2020-2021 .All rights reserved.<br/>
 */
public interface InterviewRecordService {
	
	InterviewRecordDO get(Long id);
	
	List<InterviewRecordDO> list(Map<String, Object> map);
	
	int count(Map<String, Object> map);
	
	int save(InterviewRecordDO interviewRecord);
	
	int update(InterviewRecordDO interviewRecord);

	int updateAll(InterviewRecordDO interviewRecord);
	
	int remove(Long id);
	
	int batchRemove(Long[] ids);

	R saveSchedule(InterviewScheduleSaveToUpdate saveParam) throws IOException, ParseException;

	Map<String, Object> getById(Long id);

	Map<String, Object> pageList(InterviewRecordPageParam pageParam);

	Map<String, Object> hireList(InterviewRecordPageParam pageParam);

	R updateResumeState(ResumeStateVO resumeStateVO);

	R nextStep(InterviewRecordSaveToUpdate saveParam) throws IOException, ParseException;

	R saveRecord(InterviewRecordSaveToUpdate saveParam)throws IOException, ParseException;

	R checkNextStep(InterviewRecordSaveToUpdate saveParam);

	Map<String, Object> pageListForMyself(InterviewRecordDetailPageParam pageParam);
}
